package com.gaga.common.entity.charts;

import lombok.Data;

import java.io.Serializable;
import java.util.List;

/**
 * @author liujia
 */
@Data
public class SeriesData implements Serializable {

    private static final long serialVersionUID = -2573889018261931162L;

    /**
     * 图例名称
     */
    private String legendName;

    /**
     * 当前指标 1 补录 0非补录
     */
    protected Integer isSupplementFlag = 0;

    /**
     * 值
     */
    private List<?> dataList;

    /**
     * 值类型,开发者不需要关心
     */
    protected Integer dataType;

    /**
     * 塞入列数据
     */
    protected List<ColumnData> columnList;

    /**
     * 数据总数
     */
    protected int total;

    /**
     * 对于饼图等系列，调用该方法
     *
     * @param dataList
     */
    public SeriesData(List<?> dataList) {
        this.dataList = dataList;
    }

    /**
     * 对于柱状图，一个系列需要一个legend需要调用该方法
     *
     * @param dataList
     */
    public SeriesData(String legendName, List<?> dataList) {
        this.legendName = legendName;
        this.dataList = dataList;
    }

    public SeriesData(String legendName, Integer isSupplementFlag, List<?> dataList) {
        this.legendName = legendName;
        this.dataList = dataList;
        this.isSupplementFlag = isSupplementFlag;
    }

    /**
     * @param columnList
     */
    public SeriesData columnList(List<ColumnData> columnList) {
        // 非常重要，塞入null，方便后续判断
        this.columnList = columnList;
        return this;
    }

}
